// 自动构建路由表
const TransformPages = require('uni-read-pages')

const { webpack } = new TransformPages()
const env = process.env.NODE_ENV.trim().toLowerCase();

module.exports = {
  // eslint-loader 是否在保存的时候检查
  lintOnSave: false,

  // 是否使用包含运行时编译器的Vue核心的构建
  runtimeCompiler: false,
  productionSourceMap: false,
  transpileDependencies: ['@dcloudio/uni-ui', 'uni-simple-router'], // 通过babel显式转义指定依赖（参考：https://cli.vuejs.org/zh/config/#transpiledependencies）
  chainWebpack: config => {
    // 移除 prefetch 插件
    config.plugins.delete('prefetch')

    // set preserveWhitespace
    // config.module
    //   .rule('vue')
    //   .use('vue-loader')
    //   .loader('vue-loader')
    //   .tap(options => {
    //     options.compilerOptions.preserveWhitespace = true
    //     return options
    //   })
    //   .end()
  },
  configureWebpack: {
    plugins: [
      new webpack.DefinePlugin({
        ROUTES: webpack.DefinePlugin.runtimeValue(() => {
          const tfPages = new TransformPages({
            includes: ['path', 'name', 'meta', 'aliasPath']
          })
          return JSON.stringify(tfPages.routes)
        }, true) // 注入全局Routes对象
      })


    ]
  },
  // webpack-dev-server 相关配置
  devServer: {
    open: true,
    host: '0.0.0.0',
    port: 8000,
    https: false,
    hot: true,
    hotOnly: true
  },
  parallel: require('os').cpus().length > 1
}
